总线的基本概念
为什么要用总线
计算机系统的五大部件之间有两种互联方式:分散连接、总线连接。
分散连接:各部件之间使用单独的连线。(分散连接会使系统难以扩展,所以引入总线结构。)
总线连接:将各部件连接到一组公共信息传输线上。
什么是总线
总线是连接各个部件的信息传输线,是各个部件共享的传输介质。
总线上信息的传输
串行:信息在总线上按位传输。常用与计算机与计算机之间。
并行:信息在总线上多位传输。需要多条数据线平行传输,所以,若传输距离过长,数据线之间容易发生干扰。常用于单个计算机内部。
总线结构的计算机举例
单总线结构框图
缺点:设备的利用率低。在同一时刻,只有一对设备能使用总线。
面向CPU的双总线结构框图
缺点:主存和外部设备之间无直接通路。若两者之间需要通信,会打断CPU的运行。
以存储器为中心的总线结构框图
总线的分类
按连接部件不同:
(1) 片内总线:芯片内部的总线。
(2) 系统总线:计算机各部件之间的信息传输线。
① 数据总线:双向,与机器字长、存储字长有关。 ② 地址总线:单向,与存储地址、I/O地址有关。 ③ 控制总线:有出(存储器读、写,总线许可,中断确认)有入(中断请求、总线请求)。
(3) 通信总线:用于计算机系统之间或计算机系统与其他系统(如控制仪表、移动通信等)之间的通信。
按传输方式:并行传输总线、串行传输总线。
总线特性及性能指标
总线物理实现
总线特性
机械特性:尺寸、形状、管脚数及排列顺序。
电气特性:传输方向和有效的电平范围。
功能特性:每根传输线的功能(地址、数据或控制)。
时间特性:信号的时序关系。
总线的性能指标
总线宽度:数据线的根数。
标准传输率:每秒传输的最大字节数(MBps)。
时钟同步/异步:同步、不同步(不等同于异步)。
总线复用:地址线与数据线复用。
信号线数:地址线、数据线和控制线的总和。
总线控制方式:突发、自动、仲裁、逻辑、计数。
其他指标:负载能力。
总线标准
总线结构
单总线结构
多总线结构
- 双总线结构
- 三总线结构
- 四总线结构
总线结构举例
传统微型机总线结构
VL-BUS局部总线结构
PCI总线结构
多层PCI总线结构
总线控制
总线判优
基本概念
主设备(模块):对总线有控制权。
从设备(模块):响应从主设备发来的总线命令。
总线判优控制:决定由哪个主设备占用总线。分为集中式、分布式两种。
总线判优控制(集中式)
(1) 链式查询方式
I/0接口n获得总线使用权的过程:I/0接口n发出BR(总线请求),然后总线控制部件发出BG(总线统一),I/0接口n再发送BS(总线忙)。
(2) 计数器定时查询方式
I/0接口n获得总线使用权的过程:I/0接口n发出BR给总线控制部件,若可以给出总线使用权,则启用计数器,并初始化为0。总线控制部件通过设备地址(线)访问设备0,检查其是否发出了BR;若否,计数器+1,再访问设备1……若检查至设备n,且设备n发出了BR,则设备n发送BS。
优点:设备(接口)的优先级设置非常灵活。
(3) 独立请求方式
I/O接口n获得总线使用权的过程:直接向总线控制部件发送BR,比对排队器里的序列,向对应I/O接口发送BG信号即可。
优点:每个I/O接口都有独立的BR和BG。优先级的设置更加灵活,只需要管理总线控制部件的排队器即可。
总线通信控制
目的
解决通信双方协调配合问题。
总线传输周期
(1) 申请分配阶段:主模块申请,总线仲裁决定。
(2) 寻址阶段:主模块向从模块给出地址和命令。
(3) 传数阶段:主模块和从模块交换数据。
(4) 结束阶段:主模块撤销有关信息。
总线通信的四种方式
(1) 同步通信:由统一时标控制数据传送。
① 同步式数据输入
T1 - 主模块发地址 T2 - 主模块发读命令。 T3 - 从模块提供数据。 T4 - 主模块撤销读命令,从模块撤销数据。
② 同步数据输出
T1 - 主模块发地址。 T1.5 - 主模块提供数据。 T2 - 从模块发出写命令,从模块接收到命令后,必须在规定时间内将数据总线上的数据写到 地址总线所知名的单元中。 T4 - 主模块撤销写命令和数据等信号。
(2) 异步通信:采用应答方式,没有公共时钟标准。
① 不互锁方式:请求和回答互不相关。无法保证通信的可靠性。
② 半互锁方式:主模块接到从模块发送的回答信号,才撤销请求信号。可能会造成请求信号一直保持高电平状态。
③ 全互锁方式:主模块的请求信号撤销以后,从模块才撤销其回答信号。
(3) 半同步通信:同步、异步结合。
同步:发送方用系统时钟前沿发信号;接收方用系统时钟后沿判断、识别。
异步:允许不同速度的模块和谐工作。增加一条“等待”响应信号。($\overline{WAIT}$)
以输入数据为例:
T1 - 主模块发出地址信号。
T2 - 主模块发出命令。
Tw - 当$\overline{WAIT}$为低电平时,进入等待,Tw的宽度与T的宽度一致。
. . .
T3 - 从模块提供数据。
T4 - 主模块撤销读命令,从模块撤销数据。
上述三种通信(同步、异步、半同步)的共同点:
一个总线传输周期(以输入数据为例)
主模块发地址、命令(占用总线)
从模块准备数据(不占用总线,总线空闲)
从模块向主模块发数据(占用总线)
(4) 分离式通信:充分挖掘系统总线每个瞬间的潜力。
原因:上述三种通信从模块准备数据时,总线处于空闲状态!
一个总线传输周期:
子周期1:主模块申请占用总线,使用完后即放弃总线的使用权。
子周期2:从模块申请占用总线,将各种信号送至总线上。
特点:
① 各模块有权申请占用总线。 ② 采用同步方式通信,不等对方回答。 ③ 各个模块准备数据时,不占用总线。 ④ 总线被占用时,无空闲。